package com.ruoyi.merchant.service;

import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.merchant.domain.dto.*;

/**
 * 商家认证Service接口
 */
public interface IMerchantAuthService {

    /**
     * 商家注册
     */
    AjaxResult register(MerchantRegisterRequest request);

    /**
     * 商家登录（仅验证商家信息，不生成token）
     */
    AjaxResult login(MerchantLoginRequest request);

    /**
     * 修改登录密码
     *
     * @param changePasswordDTO 密码修改信息
     * @return 结果
     */
    int changePassword(ChangePasswordDTO changePasswordDTO);

    /**
     * 忘记密码
     * @param forgotPasswordDTO
     * @return
     */
    int forgotPassword(ForgotPasswordDTO forgotPasswordDTO);

    /**
     * 注销账号
     *
     * @param deleteAccountDTO 注销账号信息
     * @return 结果
     */
    int deleteAccount(DeleteAccountDTO deleteAccountDTO);

    /**
     * 退出登录
     *
     * @return 结果
     */
    boolean logout();
}
